
# Loading additional proc with user specified bodies to compute parameter values.
source [file join [file dirname [file dirname [info script]]] gui/axis_dma_sender_v1_0.gtcl]

# Definitional proc to organize widgets for parameters.
proc init_gui { IPINST } {
  ipgui::add_param $IPINST -name "Component_Name"
  #Adding Page
  set Page_0 [ipgui::add_page $IPINST -name "Page 0"]
  ipgui::add_param $IPINST -name "TRANS_MAX_NUM" -parent ${Page_0}
  ipgui::add_param $IPINST -name "TRANS_START_POSTION" -parent ${Page_0}
  ipgui::add_param $IPINST -name "ENABLE_EDIT" -parent ${Page_0}
  ipgui::add_param $IPINST -name "trans_data_counter" -parent ${Page_0}
  ipgui::add_param $IPINST -name "USE_TUSER" -parent ${Page_0}
  ipgui::add_param $IPINST -name "TUSER_WIDTH" -parent ${Page_0}


}

proc update_PARAM_VALUE.TUSER_WIDTH { PARAM_VALUE.TUSER_WIDTH PARAM_VALUE.USE_TUSER } {
	# Procedure called to update TUSER_WIDTH when any of the dependent parameters in the arguments change
	
	set TUSER_WIDTH ${PARAM_VALUE.TUSER_WIDTH}
	set USE_TUSER ${PARAM_VALUE.USE_TUSER}
	set values(USE_TUSER) [get_property value $USE_TUSER]
	if { [gen_USERPARAMETER_TUSER_WIDTH_ENABLEMENT $values(USE_TUSER)] } {
		set_property enabled true $TUSER_WIDTH
	} else {
		set_property enabled false $TUSER_WIDTH
	}
}

proc validate_PARAM_VALUE.TUSER_WIDTH { PARAM_VALUE.TUSER_WIDTH } {
	# Procedure called to validate TUSER_WIDTH
	return true
}

proc update_PARAM_VALUE.ENABLE_EDIT { PARAM_VALUE.ENABLE_EDIT } {
	# Procedure called to update ENABLE_EDIT when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.ENABLE_EDIT { PARAM_VALUE.ENABLE_EDIT } {
	# Procedure called to validate ENABLE_EDIT
	return true
}

proc update_PARAM_VALUE.TRANS_MAX_NUM { PARAM_VALUE.TRANS_MAX_NUM } {
	# Procedure called to update TRANS_MAX_NUM when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.TRANS_MAX_NUM { PARAM_VALUE.TRANS_MAX_NUM } {
	# Procedure called to validate TRANS_MAX_NUM
	return true
}

proc update_PARAM_VALUE.TRANS_START_POSTION { PARAM_VALUE.TRANS_START_POSTION } {
	# Procedure called to update TRANS_START_POSTION when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.TRANS_START_POSTION { PARAM_VALUE.TRANS_START_POSTION } {
	# Procedure called to validate TRANS_START_POSTION
	return true
}

proc update_PARAM_VALUE.USE_TUSER { PARAM_VALUE.USE_TUSER } {
	# Procedure called to update USE_TUSER when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.USE_TUSER { PARAM_VALUE.USE_TUSER } {
	# Procedure called to validate USE_TUSER
	return true
}

proc update_PARAM_VALUE.trans_data_counter { PARAM_VALUE.trans_data_counter } {
	# Procedure called to update trans_data_counter when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.trans_data_counter { PARAM_VALUE.trans_data_counter } {
	# Procedure called to validate trans_data_counter
	return true
}

proc update_PARAM_VALUE.C_S00_AXI_DATA_WIDTH { PARAM_VALUE.C_S00_AXI_DATA_WIDTH } {
	# Procedure called to update C_S00_AXI_DATA_WIDTH when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.C_S00_AXI_DATA_WIDTH { PARAM_VALUE.C_S00_AXI_DATA_WIDTH } {
	# Procedure called to validate C_S00_AXI_DATA_WIDTH
	return true
}

proc update_PARAM_VALUE.C_S00_AXI_ADDR_WIDTH { PARAM_VALUE.C_S00_AXI_ADDR_WIDTH } {
	# Procedure called to update C_S00_AXI_ADDR_WIDTH when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.C_S00_AXI_ADDR_WIDTH { PARAM_VALUE.C_S00_AXI_ADDR_WIDTH } {
	# Procedure called to validate C_S00_AXI_ADDR_WIDTH
	return true
}

proc update_PARAM_VALUE.C_S00_AXI_BASEADDR { PARAM_VALUE.C_S00_AXI_BASEADDR } {
	# Procedure called to update C_S00_AXI_BASEADDR when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.C_S00_AXI_BASEADDR { PARAM_VALUE.C_S00_AXI_BASEADDR } {
	# Procedure called to validate C_S00_AXI_BASEADDR
	return true
}

proc update_PARAM_VALUE.C_S00_AXI_HIGHADDR { PARAM_VALUE.C_S00_AXI_HIGHADDR } {
	# Procedure called to update C_S00_AXI_HIGHADDR when any of the dependent parameters in the arguments change
}

proc validate_PARAM_VALUE.C_S00_AXI_HIGHADDR { PARAM_VALUE.C_S00_AXI_HIGHADDR } {
	# Procedure called to validate C_S00_AXI_HIGHADDR
	return true
}


proc update_MODELPARAM_VALUE.C_S00_AXI_DATA_WIDTH { MODELPARAM_VALUE.C_S00_AXI_DATA_WIDTH PARAM_VALUE.C_S00_AXI_DATA_WIDTH } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.C_S00_AXI_DATA_WIDTH}] ${MODELPARAM_VALUE.C_S00_AXI_DATA_WIDTH}
}

proc update_MODELPARAM_VALUE.C_S00_AXI_ADDR_WIDTH { MODELPARAM_VALUE.C_S00_AXI_ADDR_WIDTH PARAM_VALUE.C_S00_AXI_ADDR_WIDTH } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.C_S00_AXI_ADDR_WIDTH}] ${MODELPARAM_VALUE.C_S00_AXI_ADDR_WIDTH}
}

proc update_MODELPARAM_VALUE.ENABLE_EDIT { MODELPARAM_VALUE.ENABLE_EDIT PARAM_VALUE.ENABLE_EDIT } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.ENABLE_EDIT}] ${MODELPARAM_VALUE.ENABLE_EDIT}
}

proc update_MODELPARAM_VALUE.TRANS_MAX_NUM { MODELPARAM_VALUE.TRANS_MAX_NUM PARAM_VALUE.TRANS_MAX_NUM } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.TRANS_MAX_NUM}] ${MODELPARAM_VALUE.TRANS_MAX_NUM}
}

proc update_MODELPARAM_VALUE.TRANS_START_POSTION { MODELPARAM_VALUE.TRANS_START_POSTION PARAM_VALUE.TRANS_START_POSTION } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.TRANS_START_POSTION}] ${MODELPARAM_VALUE.TRANS_START_POSTION}
}

proc update_MODELPARAM_VALUE.TUSER_WIDTH { MODELPARAM_VALUE.TUSER_WIDTH PARAM_VALUE.TUSER_WIDTH } {
	# Procedure called to set VHDL generic/Verilog parameter value(s) based on TCL parameter value
	set_property value [get_property value ${PARAM_VALUE.TUSER_WIDTH}] ${MODELPARAM_VALUE.TUSER_WIDTH}
}

